/*
 * Copyright 2009 Lukasz Wozniak
 * Licensed under the Apache License, Version 2.0 (the "License"); 
 * you may not use this file except in compliance with the License. 
 * You may obtain a copy of the License at 
 *
 * http://www.apache.org/licenses/LICENSE-2.0 
 *
 * Unless required by applicable law or agreed to in writing, software 
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and 
 * limitations under the License.
 */
package pl.sind.blip.message;

import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;

import pl.sind.http.HttpStrings;

/**
 * Message part for text nodes.
 * If no content type supplied defaults to <code>text/plain; charset=utf8</code> 
 * 
 * @author Lukasz Wozniak
 *
 */
public class TextMessagePart extends BlipMessagePart {
	private String text;
	
	public TextMessagePart(String name,String text) {
		super(HttpStrings.TEXT_PLAIN,name);
		this.text = text;
	}

	public TextMessagePart(String contentType,String name,String text) {
		super(contentType,name);
		this.text = text;
	}

	
	
	public String getText() {
		return text;
	}

	@Override
	public InputStream getStream() {
		try {
			return new ByteArrayInputStream(text.getBytes("UTF-8"));
		} catch (UnsupportedEncodingException e) {
			throw new RuntimeException("OMG Java w/o UTF-8 support. Time to die!!");
		}
	}

	

}
